package org.yzhzc.friend.service.user;

import org.yzhzc.common.core.domain.TableDataInfo;
import org.yzhzc.friend.domain.exam.dto.ExamQueryDTO;

/**
 * 用户竞赛服务接口。
 * 定义用户参与竞赛和查询用户竞赛列表的方法。
 */
public interface IUserExamService {

    /**
     * 用户参与竞赛。
     *
     * @param token  用户 Token，用于验证用户身份
     * @param examId 竞赛 ID，标识用户要参与的竞赛
     * @return 插入的用户竞赛关系记录数
     */
    int enter(String token, Long examId);

    /**
     * 查询用户竞赛列表。
     * 根据查询条件返回分页的用户竞赛列表数据。
     *
     * @param examQueryDTO 竞赛查询条件，包含分页参数和查询类型
     * @return 分页的竞赛列表数据
     */
    TableDataInfo list(ExamQueryDTO examQueryDTO);
}